hysop.tools.sympy_utils module¶
- class hysop.tools.sympy_utils.AppliedUndef(*args)[source]¶
Bases:
AppliedUndef
Tag for hysop applied undefined functions.
- default_assumptions = {}¶
- class hysop.tools.sympy_utils.Dummy(name, var_name=None, latex_name=None, pretty_name=None, **kwds)[source]¶
Bases:
SymbolicBase
,Dummy
Tag for hysop dummy symbolic variables.
Symbols are identified by name and assumptions:
>>> from sympy import Symbol >>> Symbol("x") == Symbol("x")
True >>> Symbol(“x”, real=True) == Symbol(“x”, real=False) False
- default_assumptions = {}¶
- dummy_index¶
- class hysop.tools.sympy_utils.Expr(*args)[source]¶
Bases:
Expr
Tag for hysop symbolic expressions.
- default_assumptions = {}¶
- class hysop.tools.sympy_utils.SetupExprI[source]¶
Bases:
object
Interface for setupable expressions.
- class hysop.tools.sympy_utils.Symbol(name, var_name=None, latex_name=None, pretty_name=None, **kwds)[source]¶
Bases:
SymbolicBase
,Symbol
Tag for hysop symbolic symbols.
Symbols are identified by name and assumptions:
>>> from sympy import Symbol >>> Symbol("x") == Symbol("x")
True >>> Symbol(“x”, real=True) == Symbol(“x”, real=False) False
- default_assumptions = {}¶
- class hysop.tools.sympy_utils.SymbolicBase(name, var_name=None, latex_name=None, pretty_name=None, **kwds)[source]¶
Bases:
object
- property varname¶
- class hysop.tools.sympy_utils.UndefinedFunction(name, var_name=None, latex_name=None, pretty_name=None, **kwds)[source]¶
Bases:
SymbolicBase
,UndefinedFunction
Tag for hysop (unapplied) undefined functions. This is a metaclass.
- class hysop.tools.sympy_utils.UnevaluatedExpr(arg, **kwargs)[source]¶
Bases:
UnevaluatedExpr
Tag for hysop symbolic uneevaluated expressions.
- default_assumptions = {}¶
- class hysop.tools.sympy_utils.UnsplittedExpr(*args)[source]¶
Bases:
Expr
Tag for hysop symbolic unsplitted expressions.
- default_assumptions = {}¶
- hysop.tools.sympy_utils.build_eqs_from_dicts(d0, d1)[source]¶
Build equations from two dictionnaries (lhs and rhs). ie. rhs-lhs = 0 For keys that are only present in one dictionary, the other operand is set to 0.
- hysop.tools.sympy_utils.evalf_str(x, n, literal='', significant=True)[source]¶
Call evalf on x up to n-th decimal and removes zeros if significant is set.
- hysop.tools.sympy_utils.exponent(i, with_sign=False)[source]¶
Generate an unicode exponent of value i, signs can be enforced.
- hysop.tools.sympy_utils.exponents(ids, sep, with_sign=False, with_parenthesis=False, prefix='')[source]¶
Generate a unicode tuple exponent separated by sep, with or without parenthesis, prefix, and signs.
- hysop.tools.sympy_utils.factor_split(expr, variables, constant_var=None, include_var=False, init=0, _factor=True, _handle_const=True)[source]¶
Factorize and split expresssion.
- hysop.tools.sympy_utils.get_derivative_variables(expr)[source]¶
Derivative arguments changed for sympy 1.2
- hysop.tools.sympy_utils.non_eval_xreplace(expr, rule)[source]¶
Duplicate of sympy’s xreplace but with non-evaluate statement included.
- hysop.tools.sympy_utils.recurse_expression_tree(op, expr)[source]¶
Recurse through sympy expression tree and apply op on each subexpression.
- hysop.tools.sympy_utils.subscript(i, with_sign=False, disable_unicode=False)[source]¶
Generate an unicode subscript of value i, signs can be enforced.
- hysop.tools.sympy_utils.subscripts(ids, sep, with_sign=False, with_parenthesis=False, prefix='', disable_unicode=False)[source]¶
Generate a unicode tuple subscript separated by sep, with or without parenthesis, prefix, and signs.
- hysop.tools.sympy_utils.tensor_symbol(prefix, shape, origin=None, mask=None, sep=None, with_parenthesis=False, force_sign=False)[source]¶
Generate a np.ndarray of sympy.Symbol. Each of the symbol has given prefix and subscripts are taken from specified origin if specified or else in matrix/tensor notation. Other parameters handles subscripts style, see the subscripts() function.
It also returns all generated Symbols as a list.